<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>

        var o = {
            id: 1
        }
        function fn(x) {
            console.log(this);
        }
        // 1.call()
        // this指向了o对象
        // fn.call(o, x);

        // 2.apply()
        // 除了o以外，再传递其他值的时候，和上边的区别必须传递数组
        // fn.apply(o, ['hello']);

        // 3.bind()
        // 不会调用函数，拷贝原函数进行操作
        var fn1 = fn.bind(o);
        fn1();
    </script>
</body>
</html>